package com.ruoyi.system.dto;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 售后维护更新DTO
 * 
 * @author ruoyi
 * @since 2024-01-01
 */
@Data
public class AfterSaleMaintenanceUpdateDTO {

    /**
     * 主键ID
     */
    @NotNull(message = "ID不能为空")
    private Long id;

    /**
     * 关联项目ID
     */
    @NotNull(message = "项目ID不能为空")
    private Long projectId;

    /**
     * 售后维护名称
     */
    @NotBlank(message = "售后维护名称不能为空")
    private String maintenanceName;

    /**
     * 联系电话
     */
    @NotBlank(message = "联系电话不能为空")
    private String contactPhone;

    /**
     * 地址
     */
    @NotBlank(message = "地址不能为空")
    private String address;

    /**
     * 完工时间
     */
    private LocalDateTime completionTime;

    /**
     * 紧急程度
     * 1-低, 2-中, 3-高, 4-紧急
     */
    @NotNull(message = "紧急程度不能为空")
    private Integer urgencyLevel;

    /**
     * 报修类型
     */
    @NotBlank(message = "报修类型不能为空")
    private String repairType;

    /**
     * 保修图片URL列表
     */
    private List<String> repairImages;

    /**
     * 关联设计师ID
     */
    private Long designerId;

    /**
     * 设计师姓名
     */
    private String designerName;

    /**
     * 设计师联系电话
     */
    private String designerPhone;

    /**
     * 关联设计师描述
     */
    private String designerDescription;

    /**
     * 状态
     * 1-待处理, 2-处理中, 3-已完成, 4-已取消
     */
    private Integer status;

    /**
     * 备注
     */
    private String remark;
}
